#include "comm.hpp"
#include <cstdio>
#include <strings.h>
using namespace std;
int main()
{
    // 1.client端不需要再创建管道文件，只需要打开管道文件即可
    int wfd = open(pathname.c_str(), O_WRONLY);
    if (wfd == -1) // 文件打开失败
    {
        cout << "open error" << errno << ":" << strerror(errno) << endl;
        return 1;
    }
    // 2.开始通信
    char buffer[NUM];
    while (true)
    {
        // const char *data = "Hello,I is client";

        // cout<<"请输入你的数据:";
        //  fgets(buffer,sizeof(buffer),stdin);
        //  buffer[strlen(buffer)-1] = 0;  //去掉最后一个字符'\n'
        //  if(strcasecmp(buffer,"quit") == 0) break;  //退出写入

        system("stty raw");
        int c = getchar();
        system("stty cooked");
        if(strcmp((char*)&c,"q") == 0) break;  //输入q就退出
        // int writen = write(wfd, buffer, strlen(buffer));
          int writen = write(wfd, (char*)&c, strlen(buffer));
        // sleep(1);
        if (writen == -1)
        {
            cout << "write error" << errno << ":" << strerror(errno) << endl;
            return 1;
        }
    }

    // 3.关闭不需要的fd --》不用
    // 写入结束，关闭文件 --》这个其实server端关闭即可，我们client可以不用写close
    int fd = close(wfd); // 等下判断是否会关闭失败
    if (fd == -1)
    {
        cout << "close error" << errno << ":" << strerror(errno) << endl;
        return 2;
    }
    return 0;
}